Custom arenas
The preset catalogue covers the standard layouts. When none of them is what you need, the arena editor lets you draw one. No JSON editing is involved.
You need project-lead access on the project. Creating an arena from nothing cannot be checked against the project's customization modules, because there is no earlier configuration to compare it with, so the platform restricts it rather than skipping the check silently.
1. Open the editor
Choose a project from Your projects. Above the experiment list you will see Add from template and Add custom arena.
Add custom arena opens the editor in a new tab, already pointed at that project. Name the experiment first. Names have to be unique within the project, and the save button stays disabled until the name is valid.
2. Set the arena size
In the Arena panel, set width and height in centimetres. The default is 100 by 100. Set the grid step to whatever you want to snap to.
Leave Outer walls ticked unless you are drawing your own boundary. The outer walls and corner posts are generated for you.
3. Draw the floor
Click Region, then drag on the canvas. Each region is a piece of floor with its own surface and colour.
With a region selected:
| Property | What it does |
|---|---|
| Semantic type | What the region is for. The behaviour presets use this: a Shelter Seeker steers toward shelter regions, and a low risk tolerance makes the agent hesitate at risk regions. |
| Material | The surface. This affects how fast the agent crosses it; wood chips are slower than a solid floor. |
| Colour | How it appears in the 3D view. |
| Covered | Puts a dark roof over the region, for a shelter. |
| Elevated, Elevation | Raises the floor. |
Regions may touch. Two regions sharing an edge with no wall between them are connected, and the agent moves freely between them.
4. Draw the walls
Click Wall, then drag. Long and thin works best. A wall separates regions and the agent cannot pass through it. Set the height if you want it taller or shorter than the default, and the rotation to place it at an angle.
5. Cut doorways
Click Door, then click on a wall. The door attaches to the nearest point on that wall. Set its width to control the size of the gap, and its state:
| State | Effect |
|---|---|
| Open | The agent can pass through |
| Closed | Blocked |
| Locked | Blocked, shown in red |
| Transitioning | Blocked, shown in amber |
The wall is built in segments around each doorway, so the gap appears in the 3D view without further work.
6. Set where the run starts
In the Run panel, set the start X and Y. The white crosshair on the canvas shows where it is. It must be inside the arena and not inside a wall.
Also set the seed, which makes the run reproducible; the step duration, which is how much simulated time each step covers; and the behaviour preset, which changes how the agent moves rather than what the arena is. See Experiments for what the presets do.
7. Read the checks
The Checks panel updates as you draw, reporting objects outside the arena, doors that are not on their wall, doors wider than their wall, duplicate names, and regions the agent can never reach.
That last one deserves attention. An arena can look entirely correct and still have a region sealed off by a wall with no doorway. The agent simply never goes there, and the run measures less than you intended without reporting anything. Arena validation explains how the check works.
8. Save and run
Choose Create experiment. It saves into the project and returns you to the project list with the new experiment in it. Open it to run in the 3D workspace, as described in Running the Simulation.
What the editor does not cover
Stimuli and stimulus schedules are behaviour rather than geometry and are set in the Setup panel of the normal workspace, not the editor. Bridges are also not available in custom arenas yet, for the reason described under reserved region names in Arena validation.
AI Attribution: This page was drafted with AI assistance from the implemented editor source. The team should review it against the running application.